struct in_addr

struct in_addr인터넷 주소를 저장하기 위해서 사용한다. /usr/include/netinet/in.h에 정의되어 있다. typedef uint32_t in_addr_t;struct in_addr{ in_addr_t s_addr;}; uint32_t는 unsigned int의 typedef 자료형이다. inet_aton(3)...

xml-rpc

xml-rpcXML-RPC는 인터넷상에서 쉽고 간단하게 procedure calls을 사용할 수 있도록 도와준다. XML-PRC는 XML(12)문서의 정보를 procedure call로 변환한다. 이러한 과정은 HTTP에 기반을 두고 있다. procedure call에 대한 응답역시 XML로 이루어진다. XML을 요청/응답에 활용하므로, 표준적이고 확장용...

winsock

winsock음 어쩌다보니 윈도우 네트워크 프로그래밍도 좀 다루어야 할 일이 생겨서, winsock에 대해서 알아보기로 했다.Winsock은 Windows Sockets API의 줄임말이라고 한다. TCP(windows는 소켓을 로 보지 않는다. 해서 socket(), accept(), bind(), connect()에서 file discriptor를 쓰...

TCP Wrapper

TCP Wrapper Wrapper는 호스트 기반의 네트워크 ACL 시스템으로, 리눅스나 BSD 같은 Unix-like 운영체제에서 Internet Protocol 서버로의 네트워크 접근을 필터링 하기 위해서 사용한다. TCP wrapper 그냥 줄여서 wrappers라고 부르기도 한다. 설정이 간단해서 널리 사용하고 있다.TCP wrapper를 사용하기...

overlapped I/O 모델

소켓은 기본적으로 봉쇄/동기로 만들어진다. 이 모델은 데이터 입출력 부분에서 봉쇄(blocked)된다는 문제점을 가진다. 이 모델로는 하나의 쓰레드에서 두 개 이상의 소켓을 다루기가 힘들다. 이 모델을 바꾸지 않고 두개 이상의 소켓을 처리하려면 "멀티 쓰레드" 기술을 함께 사용하는 수 밖에 없다....

Internet socket

Internet socket컴퓨터 네트워킹에서 인터넷 소켓 혹은 네트워크 소켓은 네트워크의 종단에 놓여서 원격으로 떨어져 있는 소프트웨어가 통신할 수 있도록 하는 소프트웨어 도구를 의미한다.인터넷 소켓은 로 제어할 수 있다.소켓 API는 AT&T사에서 개발했으며, 후에 버클리 대학에서 공개된 버전의 소켓 API를 개발한다. 이 소켓을 를 포함한 모든 유닉...

입출력다중화

입출력다중화유닉스에서 여러개의 파일에서 발생하는 입출력을 동시에 관리하기 위해서 사용하는 기술이다. 기본원리는 관리하고자 하는 파일의 목록을 비트테이블에 세팅하는 것으로 시작한다. 그럼 운영체제는 해당 파일에 입출력이 발생하면 각 파일에 해당하는 비트테이블에 flag를 설정하고, 이를 응용프로그램에게 알려준다. 그럼 응용 프로그램에서는 비트테이블의 fla...

입출력 모델

입출력 모델...

berkeley socket api

berkeley socket apiberkely socket(Berkely sockets 는 BSD socket API 로도 알려져 있다. 1983년 개발된 4.2 BSD Unix(BSD socket 은 C언어를 위해서 개발되었으나 그 인터페이스가 표준으로 사용되고 있는고로 다른 언어들도 C언어의 인터페이스를 비슷하게 따르고 있다. BSD socket은 ...

네트워크 프로그래밍

네트워크 프로그래밍...